
function pageback() {
	uni.navigateBack({
		delta: 1
	});
}
function subscribe(tmplIds){
	if(!tmplIds){
		tmplIds = uni.getStorageSync('TMPL_IDS')
	}
		// 这里是获取下发权限地方，根据官方文档，可以根据  wx.getSetting() 的 withSubscriptions   这个参数获取用户是否打开订阅消息总开关。后面我们需要获取用户是否同意总是同意消息推送。所以这里要给它设置为true 。
		// wx.getSetting({
		//   withSubscriptions: true,   //  这里设置为true,下面才会返回mainSwitch
		//   success: function(res){   
		//     // 调起授权界面弹窗
		//     if (res.subscriptionsSetting.mainSwitch) {  // 用户打开了订阅消息总开关
		//       if (res.subscriptionsSetting.itemSettings != null) {   // 用户同意总是保持是否推送消息的选择, 这里表示以后不会再拉起推送消息的授权
		//         let moIdState = res.subscriptionsSetting.itemSettings[
		// 			'cgSwchbIglkRAr7JSUd8VcQW9PfvedntpuzDIRCBZnM',//设备告警提醒
		// 			'Yzi7E8henosVCUMYBke46JCsXjvSa0fud1cQDQTDfIU',//日程提醒
		// 			'S27nI4FRs8wfBs4JMEtN4PR_KQpiVAmeHaLVbOgjgts',//任务督办提醒
		// 			'X_5T1Fa9yfz9Num3vWWUElga2r-2mOgjXIqHoDXzgNo',//打卡成功通知
		// 			'nuRBNTKZxbOpgf95WeoiPQ2atWPiv3YoRNX2K1aUkOU'//审核结果通知
		// 			];  // 用户同意的消息模板id
		//         if(moIdState === 'accept'){   
		//           console.log('接受了消息推送');
		//         }else if(moIdState === 'reject'){
		//           console.log("拒绝消息推送");
		//         }else if(moIdState === 'ban'){
		//           console.log("已被后台封禁");
		//         }
		//       }else {
		        // 当用户没有点击 ’总是保持以上选择，不再询问‘  按钮。那每次执到这都会拉起授权弹窗
				let flat = false
		        wx.requestSubscribeMessage({   // 调起消息订阅界面
		          tmplIds: tmplIds,
		          success (res) { 
					flat =true
		            console.log('订阅消息 成功 '); 			
		          },
		          fail (er){
		            console.log("订阅消息 失败 ");
		            console.log(er);
		          }
		        })
		//       }
		//     }else {
		//       console.log('订阅消息未开启')
		//     }      
		//   },
		//   fail: function(error){
		//     console.log(error);
		//   },
		// })
}
function getRolePermiss(role){
	let res = '4';
	// if(role == 'e036_01' || role == 'e036_02' || role == 'e036_06'){// 只读 超级管理员 高管 环保局
	// 	res = '4'
	// }else 
	if(role == 'e036_03'){// 主管 审核
		res = '1'
	}else if(role == 'e036_04'){// 运维 填报
		res = '2'
	}else if(role == 'e036_05'){// 客户 确认评价
		res = '3'
	}
	return res
	
}
function parseTime(time, cFormat) {
  if (arguments.length === 0 || !time) {
    return null
  }
  const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
  let date
  if (typeof time === 'object') {
    date = time
  } else {
    if ((typeof time === 'string')) {
      if ((/^[0-9]+$/.test(time))) {
        // support "1548221490638"
        time = parseInt(time)
      } else {
        // support safari
        // https://stackoverflow.com/questions/4310953/invalid-date-in-safari
        time = time.replace(new RegExp(/-/gm), '/')
      }
    }

    if ((typeof time === 'number') && (time.toString().length === 10)) {
      time = time * 1000
    }
    date = new Date(time)
  }
  const formatObj = {
    y: date.getFullYear(),
    m: date.getMonth() + 1,
    d: date.getDate(),
    h: date.getHours(),
    i: date.getMinutes(),
    s: date.getSeconds(),
    a: date.getDay()
  }
  const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => {
    const value = formatObj[key]
    // Note: getDay() returns 0 on Sunday
    if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] }
    return value.toString().padStart(2, '0')
  })
  return time_str
}

function formatTime(time) {
	if (typeof time !== 'number' || time < 0) {
		return time
	}

	var hour = parseInt(time / 3600)
	time = time % 3600
	var minute = parseInt(time / 60)
	time = time % 60
	var second = time

	return ([hour, minute, second]).map(function (n) {
		n = n.toString()
		return n[1] ? n : '0' + n
	}).join(':')
}

function formatLocation(longitude, latitude) {
	if (typeof longitude === 'string' && typeof latitude === 'string') {
		longitude = parseFloat(longitude)
		latitude = parseFloat(latitude)
	}

	longitude = longitude.toFixed(2)
	latitude = latitude.toFixed(2)

	return {
		longitude: longitude.toString().split('.'),
		latitude: latitude.toString().split('.')
	}
}
var dateUtils = {
	UNITS: {
		'年': 31557600000,
		'月': 2629800000,
		'天': 86400000,
		'小时': 3600000,
		'分钟': 60000,
		'秒': 1000
	},
	humanize: function (milliseconds) {
		var humanize = '';
		for (var key in this.UNITS) {
			if (milliseconds >= this.UNITS[key]) {
				humanize = Math.floor(milliseconds / this.UNITS[key]) + key + '前';
				break;
			}
		}
		return humanize || '刚刚';
	},
	format: function (dateStr) {
		var date = this.parse(dateStr)
		var diff = Date.now() - date.getTime();
		if (diff < this.UNITS['天']) {
			return this.humanize(diff);
		}
		var _format = function (number) {
			return (number < 10 ? ('0' + number) : number);
		};
		return date.getFullYear() + '/' + _format(date.getMonth() + 1) + '/' + _format(date.getDate()) + '-' +
			_format(date.getHours()) + ':' + _format(date.getMinutes());
	},
	parse: function (str) { //将"yyyy-mm-dd HH:MM:ss"格式的字符串，转化为一个Date对象
		var a = str.split(/[^0-9]/);
		return new Date(a[0], a[1] - 1, a[2], a[3], a[4], a[5]);
	}
};

module.exports = {
	formatTime: formatTime,
	parseTime: parseTime,
	formatLocation: formatLocation,
	dateUtils: dateUtils,
	getRolePermiss:getRolePermiss,
	subscribe:subscribe
}
